package com.example.baselib.widget;


import ohos.agp.components.ComponentContainer;

/**
 * 刷新组件
 */
public interface IRComponent {

    //初始化状态
    void init(ComponentContainer.LayoutConfig config);

    //正在刷新
    boolean isLoading();

    //刷新结束
    void onFinish();

    //获取刷新的最小高度
    int getMinLoadHeight();

    void setRCState(RCState rcState);

    RCState getRCState();

    enum RCState {
        /**
         * 初始态
         */
        STATE_INIT,

        /**
         * 刷新准备状态
         */
        STATE_PREPARE,

        /**
         *  滑动状态
         */
        STATE_SCROLL,

        /**
         * 正在加载状态
         */
        STATE_LOADING,
        /**
         * 加载结束
         */
        STATE_OVER,

    }

}
